package cn.shop.merchant.model.gameconfig;

import cn.shop.merchant.model.BaseEntity;
import cn.shop.utils.enums.Status;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;

/**
 * @author : 李一涵
 * @date : Created in 2021-11-1 15:28
 * @description : 游戏模板配置类
 */
@Data
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper = true)
@TableName("merchant_game_template")
public class GameTemplate extends BaseEntity {


    /** 模板名 */
    @NotNull(message = "模板名不能为空")
    private String name;
    /** 游戏货币 储存格式: 货币名|货币代码,货币名|货币代码,货币名|货币代码.... */
    @NotNull(message = "请选择游戏货币")
    private String gameCurrency;
    /**
     * 引擎名
     */
    @NotNull(message = "请选择引擎")
    private String engineName;
    /**
     * 引擎命令
     */
    @NotNull(message = "请选择引擎")
    private String browserCommand;
    /** 费率 */
    @NotNull(message = "兑换比例不能为空")
    private BigDecimal rate;
    /** 手续费 */
    @NotNull(message = "手续费不能为空")
    private BigDecimal charge;

    /** 比例的倍数（最小寄售金额） */
    @Min(value = 10, message = "最低寄售不能低于10倍")
    @Max(value = 100, message = "最低寄售不能高于100倍")
    @NotNull(message = "最低寄售不能为空")
    private Integer multiple;

    /** 状态（0-正常，1-禁用，2-删除） */
    private Status status;

}
